#ifndef __ITEM_H__
#define __ITEM_H__

#include "base_properties.h"
#include "box.h"

namespace verema
{
/**
 * \class Item
 */
class Item : public Base_Properties
{
private:
	bool _used;
	Box _box;
	int _subunit_id;

public:
	Item()
	: Base_Properties()
	, _used(false)
	, _box()
	, _subunit_id(-1)
	{ }

	Item(int id_, std::string &name_, std::string &description_, bool used_, Box &box_, int subunit_id_)
	: Base_Properties(id_, name_, description_)
	, _used(used_)
	, _box(box_)
	, _subunit_id(subunit_id_)
	{ }

	bool used() const { return _used; }
	int subunit_id() const { return _subunit_id; }
	Box& box() { return _box; }

	void used(bool used_) { _used = used_; }
	void subunit_id(int subunit_id_) { _subunit_id = subunit_id_; }
	void box(const Box &box_) { _box = box_; }

	~Item()
	{ }
};

} // namespace verema

#endif // __ITEM_H__
